<?php

include_once 'CtlGeneral.php';

include_once '../boundaries/evaluarProfesores/BoundFormularioEvaluarProfesor.php';

class CtlEvaluarProfesores extends CtlGeneral {
    
    public function __construct($param) {
        
        switch ($param['opc']) {
            
            case 'menuPrinc': //Aqui se asigna al atributo, de la clase padre (CtlGeneral), idAlumno 
                              $this->idAlumno = 107; //Aquí va el ID del alumno que inicio sesión
                            
                            echo $this->insertarTitulo("Grupos a los que estas inscrito");
                            echo $this->listarGrupos("EP");
                            
                            //Aqui se pone el formulario con el ID del alumno, el parametro que se le manda es el ID del alumno con sesión iniciada
                            $this->frmAlumnoGrupo($this->idAlumno, null);
                break;
            
            case 'listarProfesores': //Obtenemos los datos del grupo y el alumno
                                    //Aqui se asigna al atributo, de la clase padre (CtlGeneral), idGrupo 
                                    $this->idGrupo = $param['id'];
                                    $this->idAlumno = $param['idAlumno'];
                                    
                                    //Mostramos la interfaz
                                    echo $this->insertarTitulo("Profesores y módulos");
                                    echo "<br><input type=\"button\" value=\"Regresar\" onclick=\"ajaxConId('controllers/CtlEvaluarProfesores.php', 'menuPrinc', 'vacio', 'contenido', $this->idAlumno)\">";
                                    echo $this->listarProfesoresMenu("EP");
                                    $this->frmAlumnoGrupo($this->idAlumno, $this->idGrupo);
                break;
            
            case 'frmRegisEval': echo $this->insertarTitulo("Registrar evaluación de profesor"); 
                                $this->mostrarBoundFormulario($param['id'], $param['idAlumno'], $param['idGrupo']);
                                $this->frmAlumnoGrupo($param['idAlumno'], $param['idGrupo']);
                break;
            
            case 'regisEvalProf': //Obtenemos los datos 
                                    if ($this->regisEvaluacion($param)) {
                                        echo $this->insertarTitulo("La evaluación ha sido registrada");
                                    } else {
                                        echo $this->insertarTitulo("Ocurrio un error");
                                    }
                                    //Aqui se asigna al atributo, de la clase padre (CtlGeneral), idGrupo 
                                    $this->idGrupo = $param['idGrupo'];
                                    //Aqui se asigna al atributo, de la clase padre (CtlGeneral), idAlumno 
                                    $this->idAlumno = $param['idAlumno'];
                                    //Mostramos la interfaz
                                    echo $this->insertarTitulo("Profesores y módulos");
                                    echo "<br><input type=\"button\" value=\"Regresar\" onclick=\"ajaxConId('controllers/CtlEvaluarProfesores.php', 'menuPrinc', 'vacio', 'contenido', $this->idAlumno)\">";
                                    echo $this->listarProfesoresMenu("EP");
                                    $this->frmAlumnoGrupo($this->idAlumno, $this->idGrupo);
                break;
        }
    }
    
    private function regisEvaluacion ($param) {
        
        $profesor = new Profesor();
        
        return $profesor->registrarEvalacion($param['idAlumno'], $param['idGrupo'], $param['id'], $param['dominio'], $param['comunica'], $param['ejemplos'], 
                                        $param['participa'], $param['teoriapract'], $param['claro'], $param['puntual'], $param['respeto'], $param['expecta'], (isset($param['comentario']) && $param['comentario'] != "" ? $param['comentario'] : null ) );
    }
    
    private function mostrarBoundFormulario ($idModuloProfesor, $idAlumno, $idGrupo) {
        
        new BoundFormularioEvaluarProfesor($idModuloProfesor, $idAlumno, $idGrupo);
    }
}

//Linea para construir e invocar la clase control
new CtlEvaluarProfesores(( isset($_POST['opc']) ? $_POST : $_GET ));
?>